#pragma once

// Based on:
// https://www.elastic.co/guide/en/security/current/unusual-parent-child-relationship.html
// https://github.com/elastic/security-docs/blob/9e98d789cb7b8d8fe98a3c3dec5012c4e1f22e99/docs/detections/prebuilt-rules/rule-details/unusual-parent-child-relationship.asciidoc
inline constexpr WCHAR kCriticalProcesses[] =
    LR"(%systemroot%\system32\autochk.exe|)"
    LR"(%systemroot%\syswow64\autochk.exe|)"
    LR"(%systemroot%\system32\chkdsk.exe|)"
    LR"(%systemroot%\syswow64\chkdsk.exe|)"
    // LR"(%systemroot%\system32\conhost.exe|)"
    LR"(%systemroot%\system32\consent.exe|)"
    LR"(%systemroot%\system32\csrss.exe|)"
    // LR"(%systemroot%\system32\dllhost.exe|)"
    // LR"(%systemroot%\syswow64\dllhost.exe|)"
    LR"(%systemroot%\system32\doskey.exe|)"
    LR"(%systemroot%\syswow64\doskey.exe|)"
    LR"(%systemroot%\system32\dwm.exe|)"
    LR"(%systemroot%\system32\fontdrvhost.exe|)"
    LR"(%systemroot%\system32\logonui.exe|)"
    LR"(%systemroot%\system32\lsaiso.exe|)"
    LR"(%systemroot%\system32\lsass.exe|)"
    // LR"(%systemroot%\system32\runtimebroker.exe|)"
    LR"(%systemroot%\system32\searchindexer.exe|)"
    LR"(%systemroot%\syswow64\searchindexer.exe|)"
    LR"(%systemroot%\system32\searchprotocolhost.exe|)"
    LR"(%systemroot%\syswow64\searchprotocolhost.exe|)"
    LR"(%systemroot%\system32\services.exe|)"
    LR"(%systemroot%\system32\setupcl.exe|)"
    LR"(%systemroot%\system32\smss.exe|)"
    LR"(%systemroot%\system32\spoolsv.exe|)"
    LR"(%systemroot%\system32\svchost.exe|)"
    LR"(%systemroot%\syswow64\svchost.exe|)"
    LR"(%systemroot%\system32\taskhostw.exe|)"
    LR"(%systemroot%\system32\userinit.exe|)"
    LR"(%systemroot%\syswow64\userinit.exe|)"
    LR"(%systemroot%\system32\werfault.exe|)"
    LR"(%systemroot%\syswow64\werfault.exe|)"
    LR"(%systemroot%\system32\werfaultsecure.exe|)"
    LR"(%systemroot%\syswow64\werfaultsecure.exe|)"
    LR"(%systemroot%\system32\wermgr.exe|)"
    LR"(%systemroot%\syswow64\wermgr.exe|)"
    LR"(%systemroot%\system32\wininit.exe|)"
    LR"(%systemroot%\system32\winlogon.exe|)"
    LR"(%systemroot%\system32\winrshost.exe|)"
    LR"(%systemroot%\syswow64\winrshost.exe|)"
    LR"(%systemroot%\system32\wbem\wmiprvse.exe|)"
    LR"(%systemroot%\syswow64\wbem\wmiprvse.exe|)"
    LR"(%systemroot%\system32\wsmprovhost.exe|)"
    LR"(%systemroot%\syswow64\wsmprovhost.exe)";
